#ifndef ITTSEngine_H_
#define ITTSEngine_H_ 

#include <string>
#include <memory>

using std::string;
using std::shared_ptr;

class TTSTask;
typedef shared_ptr < TTSTask > TTSTaskSPtr;

class TTSTask {
    public:
        TTSTask();
        ~TTSTask();
        bool Start();
        bool Stop();
        bool Read(string& audio, string& timestamp);
};


class ITTSEngine {
    public:
        ITTSEngine();
        virtual ~ITTSEngine();

        virtual void Init(string& cfg) = 0;
        virtual void UnInit() = 0;
        virtual TTSTaskSPtr CreateTask(string& txt, float speed, float vol) = 0;
};




#endif


